﻿using SpeakToMe.Core.Enums;
using SpeakToMe.Speech.Tokens;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;


namespace SpeakToMe.Speech.Questions
{
    [DataContract]
    public class Question
    {
        [DataMember]
        public string QuestionText { get; set; }

        [DataMember]
        public List<Token> ExpectedReplys { get; set; }
        
        [DataMember]
        public Action<ConversationContext, object, List<Token>> ExecuteIfAnswered { get; set; }
        
        [DataMember]
        public ConversationType Mode { get; set; }
        
        [DataMember]
        public string Address { get; set; }
        
        [DataMember]
        public int UserId { get; set; }
        
        [DataMember]
        public DateTime PosedDateTime { get; set; }
        
        [DataMember]
        public object State { get; set; }
    }
}